ARM SMMU与IO虚拟化技术深度解析

📚 共计 30 章节
01
SMMU概述
什么是SMMU · 为什么需要SMMU · 虚拟化角色 · 与MMU对比
基础概念
02
IO虚拟化基础
IO虚拟化挑战 · 直通与模拟 · VFIO框架 · PCIe与IO虚拟化
虚拟化VFIO
03
SMMU硬件架构
内部模块 · StreamID/SubstreamID · Context Bank · TLB与微页表
硬件架构
04
SMMU编程模型
寄存器概览 · Command/Event Queue · 配置流程 · 中断处理
编程驱动
05
SMMU地址转换
Stage1/Stage2转换 · 混合转换 · 地址空间隔离
地址转换
06
SMMU与VFIO
设备直通 · DMA重映射 · 用户态驱动 · 性能优化
VFIO直通
07
SMMU与KVM
KVM虚拟化 · vIOMMU · 嵌套虚拟化 · 中断虚拟化
KVM虚拟化
08
SMMU与PCIe ATS
ATS协议 · SMMU协作 · PRI与Page Request · 部署案例
PCIeATS
09
SMMU调试与性能
调试工具 · 性能计数器 · 问题排查 · 优化建议
调试性能
10
SMMU安全特性
安全/非安全 · TrustZone · DMA攻击防护 · 隔离策略
安全TrustZone
11
SMMU与GIC
GICv3/v4 · MSI中断重映射 · 中断隔离 · 实际配置
中断GIC
12
SMMU与ACPI
ACPI IORT表 · 设备描述 · Proximity Domain · 多SMMU拓扑
ACPI固件
13
SMMU与Device Tree
设备树节点 · DMA范围 · iommu-map属性 · 实际示例
设备树DT
14
SMMU与UEFI
UEFI初始化 · DMA保护 · Secure Boot · 固件接口
UEFI固件
15
SMMU与IOMMUFD
IOMMUFD框架 · 用户态接口 · 与VFIO对比 · 未来趋势
IOMMUFD新框架
16
SMMU与DPDK
DPDK简介 · 用户态驱动 · 内存池管理 · 性能调优
DPDK高性能
17
SMMU与SPDK
SPDK简介 · NVMe虚拟化 · 存储与SMMU · 延迟优化
SPDK存储
18
SMMU与GPU虚拟化
GPU直通 · 地址空间 · SR-IOV · 实际案例
GPU虚拟化
19
SMMU与FPGA
FPGA加速器 · DMA · 动态重配置 · 安全隔离
FPGA加速
20
SMMU与NVMe
NVMe over Fabrics · 控制器映射 · 多队列 · 性能分析
NVMe存储
21
SMMU与网络虚拟化
SmartNIC · 网络加速 · OVS与SMMU · 卸载技术
网络SmartNIC
22
SMMU与存储虚拟化
存储控制器虚拟化 · 数据路径 · 压缩加密 · 一致性
存储虚拟化
23
SMMU与机密计算
机密计算 · CCA · 内存加密 · 远程认证
机密安全
24
SMMU与RISC-V
RISC-V IOMMU对比 · 差异分析 · 生态迁移 · 未来展望
RISC-V对比
25
SMMU与CXL
CXL协议 · SMMU协作 · 内存池化 · 一致性接口
CXL互联
26
SMMU与CCIX
CCIX协议 · 缓存一致性 · 多芯片互联
CCIX一致性
27
SMMU与Gen-Z
Gen-Z架构 · 内存语义 · 池化计算
Gen-Z池化
28
SMMU与OpenCAPI
OpenCAPI协议 · 加速器接口 · 生态建设
OpenCAPI加速
29
SMMU与未来趋势
CXL 3.0 · PCIe 6.0 · SMMU演进 · AI加速器虚拟化
趋势前沿
30
SMMU实战案例
完整配置 · 性能调优 · 故障排查 · 最佳实践总结
实战案例